﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using BT_DoHoa_Nhom13.ShapeLib.ActivityShapes;

namespace BT_DoHoa_Nhom13.DiagramFactorys
{
    public class ActivityFactory : MyDiagramFactory
    {
        static MyDiagramFactory instance;
        public static MyDiagramFactory GetInstance()
        {
            if(instance == null)
            {
                instance = new ActivityFactory();
            }

            return instance;
        }

        private ActivityFactory()
        {
            name = "Activity Diagram";
            InitialListNameOfShape();

        }

        public override MyShape GetStartShape()
        {
            return new ActivityStartShape();
        }

        public override MyShape GetConditionShape()
        {
            return new ActivityConditionShape();
        }

        public override MyShape GetEndShape()
        {
            return new ActivityEndShape();
        }

        public override MyShape GetProcessShape()
        {
            return new ActivityProcessShape();
        }

        public override MyShape GetInputShape()
        {
            return new ActivityInputShape();
        }

        public override MyShape GetOutputShape()
        {
            return new ActivityOutputShape();
        }

        public override MyShape GetArrowShape()
        {
            return new ActivityArrowShape();
        }
    }
}
